package edu.jsnu.service.ticket.film.service;

import beans.PageQuery;
import edu.jsnu.service.ticket.film.domain.Film;
import edu.jsnu.service.ticket.film.dto.FilmBrief;
import edu.jsnu.service.ticket.film.dto.FilmDto;
import edu.jsnu.service.ticket.film.dto.FilmReceive;
import edu.jsnu.service.ticket.user.domain.User;

import java.util.List;
import java.util.Map;

public interface FilmService {
    List<FilmDto> getAllFilms(PageQuery pageQuery, Integer status, String keyword);

    Film getFilmById(Integer id);

    Integer insertFilm(FilmReceive receive, User currentUser);

    Integer updateFilm(FilmReceive receive, User currentUser);

    Integer deleteFilm(Integer id);

    Integer batchDel(Integer[] ids);

    Integer updateStatus(Integer id, Integer status);

    List<FilmBrief> getBriefFilms(Integer page, Integer pageCount, Integer flag, String kind, String year);

    public Map getFilmListByTypeOrYears(String filmType, String curPage, String filmYears);

}
